home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs55.d81 / tictac.prg (.txt) < prev    next >
Commodore BASIC  |  2009-10-10  |  12KB  |  445 lines

  1. 1 GOTO910
  2. 2 REM ** ML STOP KEY DISABLE **
  3. 3 PRINT"x[169]=[141][169][141]X` [234][255][169][255][133][145]L4[234]x[169]1[141][169][234][141]X`
  4. 4 [153]"xhhh+hNOThhhhhhhPRINT#HRUNHX`111"
  5. 5 [153]"hhhhhhh`1"
  6. 6 [143] ** 4 - POP ML SUBROUTINE **
  7. 10 [143] **GENERAL INPUT ROUTINE **
  8. 15 :
  9. 20 [143] ** TO OUR BEST KNOWLEDGE THIS
  10. 21 [143]    PROGRAM IS FREE FOR
  11. 22 [143]    DUPLICATION IN CANADA.
  12. 23 [143]    IF YOU HAVE CONTARY
  13. 24 [143]    INFORMATION, PLEASE
  14. 25 [143]    CONTACT COMMODORE CANADA AND
  15. 26 [143]    EVERY EFFORT WILL BE MADE TO
  16. 27 [143]    WITHDRAW COPIES OF THIS
  17. 28 [143]    PROGRAM.
  18. 30 :
  19. 35 [143] +++ INPUT SECTION +++
  20. 38 [153]"   CMDCMDCMD";
  21. 40 [151]UO,0:UR$[178]"":UI$[178]""
  22. 42 [139]UL[178]0[167]UL[178]80
  23. 45 [153]"  CMDCMD";:[151]UC,0
  24. 50 [161]UI$:[139]UI$[178]""[167]50
  25. 55 [139]UI$[178][199](13)[175][195](UR$)[177][178]1[167][151]UC,1:[153]" CMD";:[137]85
  26. 60 [139]UI$[178][199](20)[167]105
  27. 62 [139] [195](UR$)[178][177]UL[167]50
  28. 65 [141]120:[143] CHECK FOR VALID CHARACTER
  29. 70 UR$[178]UR$[170]UI$
  30. 75 [153]UI$;
  31. 80 [137]50
  32. 85 [143] +++ CHECK FOR HELP REQUEST +++
  33. 90 [139]UR$[178]UX$[167]195:[143] EXIT TO HELP ROUTINE
  34. 95 [139]UF[178]1[167][141]240
  35. 100 UF[178]0:[153]:[142]
  36. 102 [143] ++ CHECK DELETE ++
  37. 105 [139][195](UR$)[179]1[167]50
  38. 110 UR$[178][200](UR$,[195](UR$)[171]1)
  39. 115 [153]"CMD  CMDCMD";:[137]50
  40. 120 [143] ++ CHECK FOR VALID CHARACTERS ++
  41. 125 [139][195](US$)[178]0[167]150
  42. 130 [129]US[178]1[164][195](US$)
  43. 135 [139]UI$[178][202](US$,US,1)[167][142]
  44. 140 [130]
  45. 145 UI$[178]"":[142]
  46. 150 [143] ** STANDARD INPUT **
  47. 152 [139][198](UI$)[178]46[167][142]
  48. 155 [139]UI$[178][199](32)[167][142]
  49. 160 [139][198](UI$)[179]48[176][198](UI$)[177]57[167]170
  50. 165 [142]
  51. 170 [139][198](UI$)[179]65[176][198](UI$)[177]90[167]180
  52. 175 [142]
  53. 180 [139][198](UI$)[179]193[176][198](UI$)[177]218[167]UI$[178]"":[142]
  54. 185 [139][194](UT)[178]UU%[167]UI$[178][199]([198](UI$)[171]128):[142]
  55. 187 [142]
  56. 190 UI$[178]"":[142]
  57. 195 UF[178]1:[143] +++ HELP ROUTINE EXIT +++
  58. 197 [141]250
  59. 200 [141]245
  60. 203 [139]WW[178]1[167][129]UQ[178]UB[164]UB[170]919
  61. 205 [129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]2)
  62. 210 UQ%(UQ[171]UB)[178][194](UQ):[130]:[153]"LOAD"
  63. 215 UZ[178]1:UV%[178][194](UT)
  64. 216 [137]300
  65. 217 UZ[178]0:US$[178]UJ$:UG$[178]UK$:UP[178]UJ:UL[178]UK
  66. 218 [139][194](50003)[178]0[167][151]53281,1:[153]"LOAD";:[151]53281,6:[151]53280,14:[137]220
  67. 219 [153]"LOAD";
  68. 220 UT$[178]UL$:[151]UT,UV%:[129]UQ[178]UB[164](U2%[172]256[170]U1%[170]U3%[171]3)
  69. 223 [139]WW[178]1[167][129]UQ[178]UB[164]UB[170]919
  70. 225 [151]UQ,UQ%(UQ[171]UB):[130]
  71. 230 [151]U1,U1%
  72. 232 [151]U2,U2%
  73. 233 [151]U4,U4%
  74. 234 [151]U3,U3%[171]1
  75. 235 [137]35
  76. 240 UD%[178]((U2%[172]256[170]U1%[170]U3%)[171]UB)[173]40:[153][200](UD$,UD%[170]1):[142]
  77. 245 [153][200](UD$,24);"                       HELP COMING WAIT  ":[142]
  78. 250 U1%[178][194](U1):U2%[178][194](U2):U3%[178][194](U3):U4%[178][194](U4)
  79. 251 UJ$[178]US$:UK$[178]UG$:UL$[178]UT$:UJ[178]UP:UK[178]UL
  80. 255 [142]
  81. 300 [143] ** MENU **
  82. 301 :
  83. 302 [153]"LOAD":[151]UT,UU%:[139][194](50003)[178]0[167][151]53281,9:[151]53280,8
  84. 303 :
  85. 305 [153]"                MENU"
  86. 310 [153]" --------------------------------------"
  87. 315 [153]"       1.   BEGIN TIC TAC C64 "
  88. 320 [153]"       2.   STUDENT INSTRUCTIONS"
  89. 325 [153]"       3.   TEACHER INSTRUCTIONS"
  90. 335 [153]"       4.   QUIT"
  91. 340 [153]" --------------------------------------"
  92. 345 [153]"       PRESS A NUMBER KEY (1-4) ";
  93. 350 UL[178]1:US$[178]"1234":[141]35:[143] INPUT ROUTINE
  94. 351 [139][195](UR$)[177]1[167]300
  95. 352 US$[178]""
  96. 355 [145][197](UR$)[141]1000,400,500,396
  97. 360 [137]300
  98. 395 [143] ** RE-ENABLE STOP KEY AND END **
  99. 396 [139][194](50003)[179][177]1[175][194](50003)[179][177]160[175][194](50003)[179][177]0[167]399
  100. 397 [158]UU[170]71:[139][194](50003)[178]0[167][151]53281,6:[151]53280,14
  101. 398 [153]"CONTLOAD":[128]
  102. 399 [141]875:[142]
  103. 400 [143] ** STUDENT INSTRUCTIONS **
  104. 405 [153]"LOAD":[151]UT,UL%:[139][194](50003)[178]0[167][151]53281,0:[151]53280,0
  105. 410 UP[178]0:UG$[178]"(null)TUDENT RIGHT$NST":[141]850
  106. 412 [153]" (null)HE OBJECT OF THE GAME IS TO GET 3 "
  107. 414 [153]" BOXES IN A ROW, EITHER HORIZONTALLY,
  108. 416 PRINT" VERTICALLY OR DIAGONALLY. [217]OU WIN A BOX"
  109. 418 PRINT" BY SOLVING THE EQUATION IN THE BOX. "
  110. 420 PRINT" [201]F YOU SOLVE IT INCORRECTLY, THEN YOUR"
  111. 422 PRINT" OPPONENT CAN TRY TO WIN THAT BOX."
  112. 424 PRINT"     [197]NTER '[209]' TO [209][213][201][212].
  113. 485 [141]835
  114. 490 [139]UZ[178]1[167][158]UP%:[137]217
  115. 499 [142]
  116. 500 [143] ** TEACHER INSTRUCTIONS **
  117. 501 [153]"LOAD":[151]UT,UL%:[139][194](50003)[178]0[167][151]53281,2:[151]53280,10
  118. 502 UP[178]0:UG$[178]"(null)EACHER RIGHT$NST":[141]850
  119. 503 [153]"      (null)O THE BEST OF OUR KNOWLEDGE,"
  120. 504 [153]"   THIS PROGRAM IS IN THE PUBLIC"
  121. 505 [153]"   DOMAIN.  RIGHT$F THIS IS NOT THE CASE"
  122. 506 [153]"   PLEASE CONTACT:"
  123. 507 [153]"      LENOMMODORE PEEKUSINESS (null)ACHINES"
  124. 508 [153]"          3370 (null)HARMACY ATNVE.
  125. 509 PRINT"          [193]GINCOURT, [207]NTARIO"
  126. 510 PRINT"          [195]ANADA   [205]1[215] 2[203]4"
  127. 511 PRINT"          (416) 499-4292"
  128. 512 UP=1:GOSUB 835:GOSUB 850:
  129. 513 PRINT"     [208]ROGRAM [206]AME: [212]IC [212]AC [208]ET  
  130. 514 [153]"     (null)RITTEN PEEKY  : MID$O ATNNN LENOMITI  
  131. 515 PRINT"     [213]PGRADED [194]Y :          
  132. 516 [153]"     (null)HIS PROGRAM WILL RUN ON ANY
  133. 519 PRINT"         [208][197][212] 64 [195][207][205][208][213][212][197][210]
  134. 520 [153]"         LEN(null)(null)(null)(null)STR$(null)(null)VAL 64 LEN(null)(null)(null)(null)(null)VAL(null)
  135. 521 GOSUB835
  136. 590 IFUZ=1THENSYSUP%:GOTO217
  137. 599 RETURN
  138. 600 REM ** PROGRAM MODIFICATION INST **
  139. 601 PRINT"[147]":POKEUT,UL%
  140. 605 UP=0:UG$="[208]ROGRAM [205]OD":GOSUB850
  141. 660 GOSUB835
  142. 690 IFUZ=1THENSYSUP%:GOTO217
  143. 699 RETURN
  144. 700 REM ** TO USE 8032 LOAD CBM4032 **
  145. 710 PRINT"[147]BEFORE RUNNING THIS PROGRAM ON AN 8032  
  146. 720 [153]"      LOAD THE 'CBM 4032' PROGRAM"
  147. 730 [158]UU[170]71
  148. 740 [128]
  149. 797 [143] ** TO USE 8032 LOAD CBM4032 **
  150. 798 [153]"LOADBEFORE RUNNING THIS PROGRAM ON AN 8032  LOAD CBM 4032 PROGRAM"
  151. 799 [158]1093:[128]
  152. 800 [143] ** T I T L E   P A G E **
  153. 802 [153]"LOAD";:[151]UT,UU%:[139][194](50003)[178]0[167][151]53280,14:[151]53281,6
  154. 804 [129]I[178]1[164]38:[153]"SPC(WAIT";:[130]
  155. 806 [129]I[178]1[164]22:[153]"CMDSPC(WAIT";:[130]
  156. 808 [129]I[178]1[164]37:[153]"CMDCMDSPC(WAIT";:[130]
  157. 810 [129]I[178]1[164]22:[153]"ONCMDSPC(WAIT";:[130]
  158. 812 [153]"STEP  WAIT
  159. 814 PRINT" [146]   [146][169]
  160. 816 [153]" WAIT  TAB((null)
  161. 818 PRINT"[223]  [146]
  162. 820 [153]"C O M M O D O R E
  163. 822 PRINT"EDUCATIONAL
  164. 824 [153]"SOFTWARE
  165. 826 REM ** COMMODORE LOGO **
  166. 827 PRINTLEFT$(UD$,24);"PRESS SPACE BAR OR WAIT[146]":I=0
  167. 828 GETA$:IFA$<>" "THENI=I+1:IFI<250THEN828
  168. 830 T1$="":T2$="":T3$="":T4$="":I=0
  169. 832 GOTO300
  170. 835 REM ** SPACE BAR PRESS **
  171. 840 POKEUO,0:PRINTLEFT$(UD$,24);"PRESS SPACE BAR TO CONTINUE[146]"
  172. 844 GETUI$:IFUI$<>" "THEN844
  173. 846 RETURN
  174. 850 REM ** PAGE DESIGN ROUTINE **
  175. 852 UP=UP+1
  176. 855 PRINT"[147]"LEFT$(UT$+UP$,21);RIGHT$(UP$+UG$+STR$(UP),18)
  177. 860 PRINT" --------------------------------------"
  178. 864 IFUH<>0THEN870
  179. 865 PRINTLEFT$(UD$,24);LEFT$(UP$,7);"HELP - PRESS   H <RETURN>"
  180. 870 UH=0:PRINT"":RETURN
  181. 875 REM ** PLEASE WAIT REMARK **
  182. 880 PRINTLEFT$(UD$,24);"           ONE MOMENT PLEASE...     "
  183. 885 RETURN
  184. 900 REM ** SET UP VARIABLES **
  185. 901 UX$="H":DIMUQ%(1000):UB=32768:U1=196:U2=197:U3=198:U4=216:UC=167:UU=1024
  186. 902 UT=59468:UU%=12:UL%=14:UP%=1146:UM=32768:UO=158:POKE 50003,0
  187. 903 IFPEEK(50003)=0THENUB=1024:U1=209:U2=210:U3=211:U4=214:UC=204:UU=2048
  188. 904 IFPEEK(50003)=0THENUT=53272:UU%=21:UL%=23:UP%=2139:UM=1024:UO=198
  189. 905 UD$=""
  190. 906 UP$="                                       "
  191. 907 UT$=" [212][201][195] [212][193][195] [208][197][212]   [160][160][160]":REM PLACE PROGRAM TITLE HERE !!!!!!!!!!!!!!!!!***
  192. 908 RETURN
  193. 910 REM ** SET VARIABLES **
  194. 915 GOSUB900
  195. 920 REM ** CHECK FOR 8032 **
  196. 925 PRINT"[147]":PRINT"[160]":REM SHIFTED SPACE
  197. 930 IFPEEK(UB+40)<>96THENGOSUB700
  198. 931 REM ** MEMORY CHECK **
  199. 932 IF FRE(0)>2000THEN937
  200. 933 PRINT"[147]THIS MACHINE DOES NOT HAVE ENOUGH"
  201. 934 PRINT"MEMORY TO RUN THIS PROGRAM !"
  202. 935 SYSUU+71
  203. 936 END
  204. 937 PRINT"[147]":IFPEEK(50003)=0THEN962
  205. 940 REM ** BASIC 2.0  OR  4.0  OR  C-64 SETUP **
  206. 941 POKE1075,133:POKE1076,144:POKE1077,234:POKE1079,4:POKE1080,133:POKE1081,145
  207. 942 POKE1091,155:POKE1098,133:POKE1099,144:POKE1100,234:POKE1103,133
  208. 943 POKE1104,145:POKE1105,234:POKE1082,234
  209. 945 IFPEEK(50003)<>160THEN955
  210. 950 POKE1093,88:POKE1094,228:POKE1097,85:POKE1102,228:GOTO965
  211. 955 IFPEEK(50003)<>1THEN990
  212. 960 POKE1093,49:POKE1094,230:POKE1097,46:POKE1102,230:GOTO965
  213. 962 POKE2099,141:POKE2100,20:POKE2101,3:POKE2103,8:POKE2104,141:POKE2105,21
  214. 963 POKE2106,3:POKE2115,145:POKE2117,52:POKE2118,234:POKE2121,49:POKE2122,141
  215. 964 POKE2123,20:POKE2124,3:POKE2126,234:POKE2127,141:POKE2128,21:POKE2129,3
  216. 965 SYSUU+48:REM DISABLE STOP KEY
  217. 970 GOSUB800:REM TITLE
  218. 980 GOTO300:REM MENU
  219. 990 PRINT"[147]THE PGM WILL NOT WORK ON THIS MACHINE!":END
  220. 1000 IFUZ=1THENSYSUP%:SYSUP%:UZ=0:REM ** PROGRAM STARTS HERE **
  221. 1001 PRINT"[147]";:RESTORE:IFPEEK(50003)=0THENPOKE53281,6:POKE53280,14
  222. 1010 UT$=" TIC TAC PET"
  223. 1100 REM**TICTACPET*BY JO ANN COMITO**
  224. 1110 REM**SUNY STONY BROOK*8/17/78**
  225. 1130 PRINT"[147]":DD$=""
  226. 1140 RR$=""
  227. 1150 B$(1)="[176][192][192][192][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][192][192][192][178][192][192][192][192][192][192][192][192][192][192][192][192][174]"
  228. 1160 B$(2)="[221]1           [221]2           [221]3           [221]"
  229. 1170 B$(3)="[221]            [221]            [221]            [221]"
  230. 1180 B$(4)="[171][192][192][192][192][192][192][192][192][192][192][192][192][219][192][192][192][192][192][192][192][192][192][192][192][192][219][192][192][192][192][192][192][192][192][192][192][192][192][179]"
  231. 1190 B$(5)="[221]4           [221]5           [221]6           [221]"
  232. 1200 B$(6)="[221]7           [221]8           [221]9           [221]"
  233. 1210 B$(7)="[173][192][192][192][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][192][192][192][177][192][192][192][192][192][192][192][192][192][192][192][192][189]"
  234. 1220 X$(1)="   [205][223][146]  [169][206][146]  "
  235. 1230 X$(2)="   [223][205][223][169][206][146][169]  "
  236. 1240 X$(3)="    [223][205][206][146][169]   "
  237. 1250 X$(4)="    [169][206][205][223][146]   "
  238. 1260 X$(5)="   [169][206][146][169][223][205][223][146]  "
  239. 1270 X$(6)="   [206][146][169]  [223][205][146] "
  240. 1280 O$(1)="   [169]  [223][146]    "
  241. 1290 O$(2)="  [169][146][169]  [223][223][146]   "
  242. 1300 O$(3)="   [146]     [146]   "
  243. 1310 O$(4)="   [146]     [146]   "
  244. 1320 O$(5)="  [223][223][146]  [169][146][169]   "
  245. 1330 O$(6)="   [223]  [146][169]    "
  246. 1340 UG$="":UH=1:UP=0:GOSUB850
  247. 1410 PRINT" ENTER LEVEL OF DIFFICULTY 1-9 ? ";
  248. 1425 US$="123456789":UL=1:GOSUB35:L=VAL(UR$)
  249. 1430 IFL<>INT(L)ORL<1ORL>9THENPRINT"PICK A NUMBER BETWEEN 1 AND 9":GOTO1420
  250. 1435 PRINT"[147]":GOSUB399
  251. 1440 FORI=1TO9:FORJ=1TO8:EQ(I,J)=0:NEXTJ,I
  252. 1450 GOSUB2080
  253. 1460 GOSUB2000
  254. 1470 GOSUB2730
  255. 1480 N=N+1:IFN/2<>INT(N/2)THENPL$="[214]"
  256. 1490 IFN/2=INT(N/2)THENPL$="[215]"
  257. 1500 DD=22:RR=1:GOSUB1790
  258. 1510 PRINT"  PLAYER "PL$"[146] YOUR TURN [218][218] WHICH BOX ?    [157][157][157]";
  259. 1520 US$="123456789Q":UL=1:GOSUB35:BO=VAL(UR$)
  260. 1525 IFUR$="Q" THENSYSUP%:GOTO300
  261. 1530 IFBO=0THENPRINT"[147]":N=0:GOTO1410
  262. 1540 IFBO<>INT(BO)ORBO<1ORBO>9THEN1500
  263. 1550 IFEQ(BO,8)<>0THEN1500
  264. 1560 F=0
  265. 1570 GOSUB2870
  266. 1580 FL=0:F=F+1
  267. 1590 IFEQ(BO,1)=ANSTHENGOSUB3120
  268. 1600 IFN=9THEN1730
  269. 1610 IFFL=1THEN1480
  270. 1620 IFFL=2THEN1750
  271. 1630 DD=23:RR=17:GOSUB1790
  272. 1640 PRINT"WRONG![146]":FORI=1TO450:NEXTI
  273. 1650 IFF=2THEN1700
  274. 1660 IFPL$="[214]"THENPL$="[215]":GOTO1680
  275. 1670 IFPL$="[215]"THENPL$="[214]"
  276. 1680 DD=22:RR=1:GOSUB1790
  277. 1690 PRINT" PLAYER "PL$"[146] TRY BOX                     [157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157][157]"BO;
  278. 1700 DD=23:RR=17:GOSUB1790:PRINT"                  ";
  279. 1710 IFF=2THENGOSUB2870:GOTO1480
  280. 1720 GOTO1570
  281. 1730 FORI=1TO900:NEXTI
  282. 1740 PRINT"[147]IT IS A TIE!"
  283. 1750 UG$="":UH=1:GOSUB835:UP=0:GOSUB850:PRINT"  PLAY AGAIN ? ";
  284. 1755 US$="YN":UL=1:GOSUB35:A$=UR$
  285. 1760 IFA$="Y"THENN=0:GOTO1340
  286. 1770 PRINT"[147]HAVE A GOOD DAY!"
  287. 1780 SYSUP%:GOTO300
  288. 1790 REM**CURSOR ADDRESS**
  289. 1800 PP$=""+LEFT$(DD$,DD)+LEFT$(RR$,RR)
  290. 1810 PRINTPP$;:RETURN
  291. 1820 REM**GENERATE RATIONAL COEFF**
  292. 1830 CO=(INT((RND(1)*10-05)*10))/10:RETURN
  293. 1840 REM**GENERATE INTEGER COEFF**
  294. 1850 CO=INT(RND(1)*20)-10:RETURN
  295. 1860 REM**PRINT OUT O**
  296. 1870 DD=DO:RR=RO:GOSUB1790
  297. 1880 FORI=1TO6
  298. 1890 PRINTO$(I)
  299. 1900 DD=DD+1:GOSUB1790
  300. 1910 NEXTI
  301. 1920 RETURN
  302. 1930 REM**PRINT OUT X**
  303. 1940 DD=DX:RR=RX:GOSUB1790
  304. 1950 FORI=1TO6
  305. 1960 PRINTX$(I)
  306. 1970 DD=DD+1:GOSUB1790
  307. 1980 NEXTI
  308. 1990 RETURN
  309. 2000 PRINT"[147]";B$(1);B$(2);
  310. 2010 FORI=1TO5:PRINTB$(3);:NEXT
  311. 2020 PRINTB$(4);B$(5);
  312. 2030 FORI=1TO5:PRINTB$(3);:NEXT
  313. 2040 PRINTB$(4);B$(6);
  314. 2050 FORI=1TO5:PRINTB$(3);:NEXT
  315. 2060 PRINTB$(7);
  316. 2070 RETURN
  317. 2080 REM**GENERATE EQUATIONS**
  318. 2090 FORI=1TO9
  319. 2100 X=0:A=0:B=0:C=0:D=0:E=0
  320. 2110 L1=INT(RND(1)*L+1)
  321. 2120 X=INT(RND(1)*20)
  322. 2130 ONL1GOTO2510,2480,2600,2450,2420,2230,2200,2320,2170,2140
  323. 2140 REM**L1=10**
  324. 2150 GOSUB1820
  325. 2160 E=CO
  326. 2170 REM**L1=9**
  327. 2180 GOSUB1820
  328. 2190 C=CO
  329. 2200 REM**LI=7**
  330. 2210 GOSUB1820
  331. 2220 A=CO
  332. 2230 REM**L1=6**
  333. 2240 GOSUB1820
  334. 2250 B=CO
  335. 2260 IFL1=6THENA=1
  336. 2270 D=A*X+B+E*X-C*X
  337. 2280 D1=A*(X+1)+B+E*(X+1)-C*(X+1)
  338. 2290 IFD=D1THEN2100
  339. 2300 IFABS(D)>=100OR(INT(D*10))/10<>DTHEN2100
  340. 2310 GOTO2690
  341. 2320 REM**L1=8**
  342. 2330 GOSUB1820
  343. 2340 C=CO
  344. 2350 GOSUB1820
  345. 2360 A=CO
  346. 2370 B=C*X-A*X
  347. 2380 IFABS(B)>=100OR(INT(B*10))/10<>BTHEN2100
  348. 2390 D1=C*(X+1)-A*(X+1)
  349. 2400 IFB=D1THEN2100
  350. 2410 GOTO2690
  351. 2420 REM**L1=5**
  352. 2430 GOSUB1840
  353. 2440 E=CO
  354. 2450 REM**L1=4**
  355. 2460 GOSUB1840
  356. 2470 C=CO
  357. 2480 REM**L1=2**
  358. 2490 GOSUB1840
  359. 2500 A=CO
  360. 2510 REM**L1=1**
  361. 2520 GOSUB1840
  362. 2530 B=CO
  363. 2540 IFL1=1THENA=1
  364. 2550 D=A*X+B+E*X-C*X
  365. 2560 IFABS(D)>=100THEN2100
  366. 2570 D1=A*(X+1)+B+E*(X+1)-C*(X+1)
  367. 2580 IFD=D1THEN2100
  368. 2590 GOTO2690
  369. 2600 REM**L1=3**
  370. 2610 GOSUB1840
  371. 2620 C=CO
  372. 2630 GOSUB1840
  373. 2640 A=CO
  374. 2650 B=C*X-A*X
  375. 2660 IFABS(B)>=100THEN2100
  376. 2670 D1=C*(X+1)-A*(X+1)
  377. 2680 IFB=D1THEN2100
  378. 2690 REM**ENTER COEFF INTO EQ(I)**
  379. 2700 EQ(I,1)=X:EQ(I,2)=A:EQ(I,3)=B:EQ(I,4)=C:EQ(I,5)=D:EQ(I,6)=E:EQ(I,7)=L1
  380. 2710 NEXTI
  381. 2720 RETURN
  382. 2730 REM**PUT EQUATIONS IN BOXES**
  383. 2740 FORI=1TO9
  384. 2750 IFI<4THENDD=2:RR=2+(I-1)*13:GOSUB1790
  385. 2760 IFI>3ANDI<7THENDD=9:RR=2+(I-4)*13:GOSUB1790
  386. 2770 IFI>6THENDD=16:RR=2+(I-7)*13:GOSUB1790
  387. 2780 IFEQ(I,7)=1OREQ(I,7)=6THENPRINT"X+";EQ(I,3);"[157]=";EQ(I,5)
  388. 2790 IFEQ(I,7)=2OREQ(I,7)=7THENPRINTEQ(I,2);"[157]X+";EQ(I,3);"[157][157][157][157][157]=";EQ(I,5)
  389. 2800 IFEQ(I,7)=3OREQ(I,7)=8THENPRINTEQ(I,2);"[157]X+";EQ(I,3);"[157][157][157][157][157][157]=";EQ(I,4);"[157]X"
  390. 2810 IFEQ(I,7)=4OREQ(I,7)=9THENPRINTEQ(I,2)"[157]X+"EQ(I,3)"[157][157][157][157][157][157][157][157]=";
  391. 2820 IFEQ(I,7)=4OREQ(I,7)=9THENPRINTEQ(I,4)"[157]X+"EQ(I,5)
  392. 2830 IFEQ(I,7)=5OREQ(I,7)=10THENPRINTEQ(I,2)"[157]X+"EQ(I,3)"[157]+"EQ(I,6);
  393. 2840 IFEQ(I,7)=5OREQ(I,7)=10THENPRINT"[157]X[157][157][157][157][157][157][157][157][157]="EQ(I,4)"[157]X+"EQ(I,5)
  394. 2850 NEXT
  395. 2860 RETURN
  396. 2870 REM**PUT CURSOR IN BOX-GET ANS**
  397. 2880 IFBO<4THENDD=6
  398. 2890 IFBO>3ANDBO<7THENDD=13
  399. 2900 IFBO>6THENDD=20
  400. 2910 IFINT((BO+2)/3)=(BO+2)/3THENRR=3
  401. 2920 IFINT((BO+1)/3)=(BO+1)/3THENRR=16
  402. 2930 IFINT(BO/3)=BO/3THENRR=29
  403. 2940 GOSUB1790
  404. 2950 IFF=2THENPRINT"      ":RETURN
  405. 2960 PRINT"X=      [157][157][157][157][157][157]";
  406. 2970 US$="0123456789":UL=4:WW=1:GOSUB35:WW=0:ANS=VAL(UR$)
  407. 3110 RETURN
  408. 3120 REM**FIND BOX**
  409. 3130 IFBO<4THENDD=1
  410. 3140 IFBO>3ANDBO<7THENDD=8
  411. 3150 IFBO>6THENDD=15
  412. 3160 IFINT((BO+2)/3)=(BO+2)/3THENRR=2
  413. 3170 IFINT((BO+1)/3)=(BO+1)/3THENRR=15
  414. 3180 IFINT(BO/3)=BO/3THENRR=28
  415. 3190 IFPL$="[214]"THENEQ(BO,8)=1:GOTO3270
  416. 3200 REM**"[215]"WINS THE BOX**
  417. 3210 EQ(BO,8)=-1
  418. 3220 GOSUB1790
  419. 3230 FORI=1TO6:PRINTO$(I):DD=DD+1:GOSUB1790:NEXTI
  420. 3240 GOSUB3320
  421. 3250 IFFL=2THENRETURN
  422. 3260 FL=1:RETURN
  423. 3270 GOSUB1790
  424. 3280 FORI=1TO6:PRINTX$(I):DD=DD+1:GOSUB1790:NEXTI
  425. 3290 GOSUB3320
  426. 3300 IFFL=2THENRETURN
  427. 3310 FL=1:RETURN
  428. 3320 REM**CHECK FOR "[215]"WIN
  429. 3330 IFEQ(1,8)=EQ(5,8)ANDEQ(5,8)=EQ(9,8)ANDEQ(1,8)<>0THEN3420
  430. 3340 IFEQ(3,8)=EQ(5,8)ANDEQ(5,8)=EQ(7,8)ANDEQ(5,8)<>0THEN3420
  431. 3350 IFEQ(1,8)=EQ(4,8)ANDEQ(4,8)=EQ(7,8)ANDEQ(1,8)<>0THEN3420
  432. 3360 IFEQ(2,8)=EQ(5,8)ANDEQ(5,8)=EQ(8,8)ANDEQ(2,8)<>0THEN3420
  433. 3370 IFEQ(3,8)=EQ(6,8)ANDEQ(6,8)=EQ(9,8)ANDEQ(3,8)<>0THEN3420
  434. 3380 IFEQ(1,8)=EQ(2,8)ANDEQ(2,8)=EQ(3,8)ANDEQ(1,8)<>0THEN3420
  435. 3390 IFEQ(4,8)=EQ(5,8)ANDEQ(5,8)=EQ(6,8)ANDEQ(4,8)<>0THEN3420
  436. 3400 IFEQ(7,8)=EQ(8,8)ANDEQ(8,8)=EQ(9,8)ANDEQ(7,8)<>0THEN3420
  437. 3410 RETURN
  438. 3420 FORI=1TO250:NEXTI
  439. 3430 FL=2
  440. 3440 PRINT"[147]"
  441. 3450 DD=5:RR=17:GOSUB1790
  442. 3460 IFPL$="[214]"THEN3480
  443. 3470 FORI=1TO6:PRINT"[157][157][157]"O$(I):DD=DD+1:GOSUB1790:NEXT:PRINT"[157][157]YOU WIN !":RETURN
  444. 3480 FORI=1TO6:PRINT"[157][157][157]"X$(I):DD=DD+1:GOSUB1790:NEXT:PRINT"[157][157]YOU WIN !":RETURN
  445.